<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // 添加删除数组元素方法
        // 1. push() 在我们数组的末尾添加一个或者多个数组元素   push表示推
        var arr = [1, 2, 3];
        // arr.push(4, 'pink');
        console.log(arr.push(4, 'pink')); //5
        console.log(arr); //[1, 2, 3, 4, 'pink']
        // (1) push是可以给数组后面追加新的元素
        // (2) push() 参数直接写数组元素就可以了
        // (3) push完毕之后，返回的结果是新数组的长度
        // (4) 原数组也会发生变化

        // 2.unshift 在我们数组的开头添加一个或者多个数组元素
        // arr.unshift('red');
        console.log(arr.unshift('red')); //6
        console.log(arr); //['red', 1, 2, 3, 4, 'pink']
        // (1) unshift是可以给数组前面追加新的元素
        // (2) unshift() 参数直接写数组元素就可以了
        // (3) unshift完毕之后，返回的结果是新数组的长度
        // (4) 原数组也会发生变化

        // 3.splice 在我们数组的中间添加一个或者多个数组元素
        arr.splice(1, 0, 'a'); //1表示在索引号为1的位置  0表示覆盖0个元素  'a'表示添加新元素'a'
        console.log(arr); //['red' , 'a', 1, 2, 3, 4, 'pink']
        arr.splice(2, 2, 'b'); //在索引号为2的位置添加一个新元素'b'，并且覆盖2个元素
        console.log(arr); //['red' , 'a', 'b', 3, 4, 'pink']

        // 4. pop() 它可以删除数组的最后一个元素  不带参数
        // arr.pop();
        console.log(arr.pop()); //返回删除的元素 'pink'
        console.log(arr); //['red' , 'a', 'b', 3, 4]

        // 5. shift() 它可以删除数组的第一个元素  不带参数
        // arr.shift();
        console.log(arr.shift()); // 返回删除的元素 'rad'
        console.log(arr); //[ 'a', 'b', 3, 4]

        // 6.splice() 它可以删除数组任意元素  带两个参数
        // arr.splice(1, 1);
        console.log(arr.splice(1, 1)); //返回一个由删除的元素组成的数组 ['b']
        console.log(arr); //[ 'a', 3, 4]
    </script>
</head>

<body>

</body>

</html>